/**
 * HomeStatistic，首页统计
 */
export interface HomeStatistic {
  /**
   * 缺勤人数
   */
  absenceAttendance?: number;
  /**
   * 实际出勤人数
   */
  actualAttendance?: number;
  /**
   * 出勤率
   */
  attendanceRatio?: number;
  /**
   * 银行账户余额
   */
  bankAccountBalance?: number;
  /**
   * 合同数
   */
  contractCount?: number;
  /**
   * 保证账户余额
   */
  guaranteeBalance?: number;
  /**
   * 进账总额
   */
  incomeAmount?: number;
  /**
   * 管理员人数
   */
  managerCount?: number;
  /**
   * 系统通知
   */
  notifys?: SysNotify[] | null;
  /**
   * 应考勤人数
   */
  numberAttendees?: number;
  /**
   *线下代发总额
   */
  offlinePaymentAmount?: number;
  /**
   * 在线代发总额
   */
  onlinePaymentAmount?: number;
  /**
   * 代发人数
   */
  paymentPersonCount?: number;

  /**
   * 在册人数
   */
  personCount?: number;
  /**
   * 在册西藏人数
   */
  personXZCount?: number;
  /**
   * 西藏工人占比
   */
  personXZRatio?: number;
  /**
   * 签订合同占比
   */
  signContractRatio?: number;
  /**
   * 签订人数
   */
  signPersonCount?: number;
  superviseCount?: number;
  /**
   * 操作动态
   */
  tableLog?: SysTableLog[] | null;
  /**
   * 代发总额
   */
  totalPaymentAmount?: number;
}

/**
 * SysNotify，系统通知展示字段
 */
export interface SysNotify {
  /**
   * 附件集合
   */
  attachments?: AttachmentInfo[] | null;
  /**
   * 发布内容
   */
  content?: null | string;
  /**
   * 发布时间
   */
  createTime?: Date | null;
  /**
   * 发布者
   */
  creator?: null | string;
  /**
   * 系统通知Id
   */
  id: string;
  /**
   * 是否置顶该通知
   */
  isTop?: boolean;
  limitReaderType?: number;
  /**
   * 限制查看人类型(1：所有人可见 2：建设单位可见 3：总承包可见 4：专业分包可见 5：劳务公司可见)
   */
  limitReaderTypeName?: null | string;
  /**
   * 已读次数
   */
  readedNum?: number | null;
  /**
   * 修改时间
   */
  updateTime?: Date | null;
}

/**
 * AttachmentInfo
 */
export interface AttachmentInfo {
  bucketName?: null | string;
  contentType?: null | string;
  createTime?: Date;
  discription?: null | string;
  displayOrder?: number | null;
  fileLength?: number | null;
  friendlyName?: null | string;
  id?: null | string;
  ip?: null | string;
  isTemporary?: boolean;
  mediaType?: number;
  name?: null | string;
  objectFilePath?: null | string;
}

/**
 * SysTableLog
 */
export interface SysTableLog {
  /**
   * 创建时间
   */
  createTime?: Date;
  /**
   * 操作数据
   */
  data?: null | string;
  /**
   * 数据库名
   */
  databaseName?: null | string;
  /**
   * 日志主键
   */
  id?: number;
  /**
   * 操作IP
   */
  ip?: null | string;
  /**
   * 对象ID
   */
  objectId?: null | string;
  operationType?: number;
  operationTypeName?: null | string;
  /**
   * 操作者名称
   */
  operator?: null | string;
  /**
   * 操作者安全信息ID
   */
  securityId?: number | null;
  /**
   * 表名
   */
  tableName?: null | string;
  /**
   * 操作URL
   */
  url?: null | string;
  /**
   * 操作用户ID
   */
  userId?: number;
  userType?: number;
  userTypeName?: null | string;
}
